<?php
/**
 * Application level Controller
 *
 * This file is application-wide controller file. You can put all
 * application-wide controller-related methods here.
 *
 * CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
 * Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
 *
 * Licensed under The MIT License
 * For full copyright and license information, please see the LICENSE.txt
 * Redistributions of files must retain the above copyright notice.
 *
 * @copyright     Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
 * @link          http://cakephp.org CakePHP(tm) Project
 * @package       app.Controller
 * @since         CakePHP(tm) v 0.2.9
 * @license       http://www.opensource.org/licenses/mit-license.php MIT License
 */

App::uses('Controller', 'Controller');

/**
 * Application Controller
 *
 * Add your application-wide methods in the class below, your controllers
 * will inherit them.
 *
 * @package		app.Controller
 * @link		http://book.cakephp.org/2.0/en/controllers.html#the-app-controller
 */
class AppController extends Controller {
    public $components = array(
        #'Signup' => array(
        #    'loginAction' => SIGNUP_URL,
        #    'fields' => array('username'=>'UserID', 'password'=>'Email'),
        #),
        'Session',
        'DebugKit.Toolbar',
        'Auth' => array(
        #    #'loginAction' => 'defined in __construct() below',
        #    'loginAction' => SIGNUP_URL,
        #    'sessionKey' => 'signup_me.result',
            'fields' => array('username'=>'id', 'password'=>'id'),
        #    'authenticate' => array(
        #        'Form' => 
        #            array(
        #                'fields' => 
        #                    array('username'=>'UserID', 'password'=>'UserID'),
        #            ),
        #    ),
        #    #'basic' => array('Controller'),
        #    #'authorize' => array('Controller'),
            'loginRedirect' => array('controller'=>'slots', 'action'=>'view'),
            'allowedActions' => array('login', 'receivetoken', 'logout'),
        ),
    );
    /*
    public function __construct($request = null, $response = null) {
        parent::__construct($request, $response);
        if (!session_id())
            $this->Session->start();
        # Note: This has to be done because PHP doesn't allow any executable in class definitions
        $this->components['Auth']['loginAction'] = SIGNUP_URL.'index.php?session_id='.session_id();
        echo "this=<pre>".print_r($this,true)."</pre><br />\n";
        exit;
    }
     */
    public function isAuthorized($user = null)
    {
        if (!parent::isAuthorized($user))
            return false;
        #$this->Session->setFlash( "DEBUG: Checking if isAuthorized in AppController.php<br />\n");
        if ($this->Session->check('Auth.User'))
            return true;
        else
            return false;
    }
}
